<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>2.其二</title>
  </head>
  <body>
    <script type="text/javascript" >
      let number = 18
      let person = {name:'海峰老师',sex:'未知'}

      Object.defineProperty(person,'age',{
        // enumerable:true,
        /* 
          1.get函数何时调用？—— 有人读取person的age属性时
          2.get函数中的this是谁？—— 当前操作的对象
        */
        get:function liandongDu (){
          console.log('@')
          return number
        },
        /* 
          1.set函数何时调用？—— 有人修改person的age属性时
          2.set函数中的this是谁？—— 当前操作的对象
          3.会收到参数 —— 参数的值就是修改的值
        */
        set:function liandongGai (value){
          console.log('#',value)
          number = value
        }
      })

      console.log(person)

      for (let key in person){
        console.log(key)
      }

    </script>
  </body>
</html>